import request from './request'

// 登录参数
interface LoginParams{
    password:string
    username:string
}

// 登录成功返回值类型
interface LoginData {
    token: string
    tokenHead: string
}

// 获取用户信息返回值类型
interface AdminInfoData {
    menus:unknown[]
    roles: string[]
    username: string
}

// 接口返回数据接口
interface ResponData<T = null>{
    code: number
    message: string
    data?: T
}

// 登录   此处的返回值Promise是一个接口,接口上需要传入泛型，这个泛型就是Promise.then方法中的回调函数的第一个参数的类型
export const adminLogin = (data: LoginParams):Promise<ResponData<LoginData>> => request.post('/admin/login', data)

// 获取登录用户信息
export const getUserInfo = ():Promise<ResponData<AdminInfoData>> => request.get('/admin/info')